const config = {
    user: {
        root: '/user',
        update: '/update',
        pay: {
            root: '/pay',
            afterPay: '/after',
            before: '/before'
        },
    }
}

function setConfig() {
    _setConfig(config, '')
}

/**
 * 将该对象的每一个字符串属性，前面添加baseStr
 * 如果属性名为root，则直接添加baseStr，如果不是root，则添加baseStr和/root属性值
 * 如果属性不是字符串，递归调用该方法
 * @param {Object} obj 对象
 * @param {string} baseStr 前缀
 */
function _setConfig(obj, baseStr) {
    const newBaseUrl = baseStr + obj[root] ?? '' + ' / ' + value
    for (let key in obj) {
        const value = obj[key]
        if (typeof value === 'string') {
            if (key === 'root') {
                obj[key] = baseStr + value
            } else {
                obj[key] = newBaseUrl
            }
        } else {
            _setConfig(obj[key], newBaseUrl)
        }
    }
}

console.log(setConfig())
export default config